همانطور که میدانید ویندوز فایل ها را با استفاده از پسوند آنها میشناسد. مثلآ وقتی اسم فایل به txt. ختم میشه ویندوز میفهمه که فایل متنی است. این به ویندوز کمک میکنه تا بدونه فایل را با چه برنامه ای باز کنه. مثلآ به عنوان پیشفرض فایل متنی با notepad باز میشه.
حالا ASSOC دیگه چیه؟
ASSOC یکی از ابزار موجود در ویندوز است که به ویندوز «یاد میده»هر پسوند مربوط به چه نوع فایلیه. مثلآ بهش میگه txt. یعنی متن. نام ASSOCاز ابتدای کلمه Associate به معنی «ارتباط دادن» گرفته شده.
گفتی سواستفاده؟
یه زمانی هکر ها توی چت فایل های اجرایی را به جای عکس به قربانی ها می فرستادند مثلآ پسوند آن را می گذاشتند jpg.exe. (ویندوز به طور پیش فرض پسوند را نشان نمی دهد در نتیجه پسوند واقعی (سه حرف آخر) که exe باشد پنهان می شد و کاربر اشتباهآ فکر می کرد پسوند jpg است) و آیکون آن را هم تغییر می دادند به آیکون عکس. اگر کاربر مبتدی باشد و تفاوت یا معنی پسوند ها را نداند این طوری به دام می افتد. اما کاربر های حرفه ای تر ویندوز خود را از قسمت Folder Options تنظیم می کنند تا کل نام فایل دیده شود و در این صورت ترفند فرد نفوذگر لو می رفت.
فرض کنید با استفاده از ASSOC از قصد و اشتباهآ به ویندوز بگیم پسوندjpg. (عکس) مربوط به فایل های اجرایی است. حالا از این به بعد ویندوز با فایل های حاوی عکس مثل برنامه های اجرایی رفتار می کند. یعنی دیگه نیازی به پسوند exe. نیست و یک فایل مثلآ با نام image.jpg عینآ همانطور اجرا می شود که image.exe اجرا می شود.
پس اگر سیستم قربانی را با استفاده از ASSOC گول بزنیم در مرحله بعد می توانیم با مثلآ یک فایل تصویری یک فایل مخرب را روی سیستم اجرا کنیم.
نحوه استفاده از ASSOC
اگر در CMD تایپ کنید assoc لیست کاملی از extension association های موجود در ویندوز تان را می بینید.
برای تغییر اینها باید ابتدا بنویسید assoc بعد نقطه بعد حروف پسوند مورد نظر بعد علامت مساوی بعد نوع فایل.
به عنوان مثال اگر من بخواهم به ویندوز بگم فایل txt. متنی هست تایپ می کنم،
ASSOC .txt=txtfile
حالا می خواهم الکی بگم jpg. همان فایل اجرایی است. اول از لیست assoc به هر دو پسوند exe. و jpg. نگاه می کنیم،
با توجه به عکس بالا به راحتی می فهمیم که برای تغییر jpg. به عکس کافی است دستور زیر را اجرا کنیم،
ASSOC .jpg=exefile
نتیجه را ببینید:
خوب احتمالآ میگید Icon فایل همچنان کار را لو میده، برای حل این مشکل دو راه حل داریم.
راه اول، فایل اجرایی را ویرایش کرده و آیکون jpg برایش انتخاب کنیم.
این راه یک مشکل اساسی داره، آیکون فایل های تصویری مثلآ در ویندوز 7متفاوت از ویندوز XP است. در نتیجه اگر شما آیکون ویندوز 7 را انتخاب کنید و فرد قربانی ویندوز XP داشته باشد قضیه لو میره. یا شاید مثلآ طرف از یکtheme خاص استفاده کنه که آیکون ها را برایش تغییر داده باشه. در نتیجه این روش موقعی خوبه که بدانید آیکون فایل های تصویری روی ویندوز قربانی دقیقآ چیست.
راه دوم، این راه سختتر است اما نتیجه بهتری دارد. در این روش بعد از استفاده از ASSOC کلید های رجیستری سیستم قربانی را نیز تغییر می دهیم تاIcon پیشفرض برای فایل های اجرایی را تغییر بدهد به آیکون پیشفرض فایل های تصویری، حالا هر آیکونی که می خواهد باشد.
یعنی مقدار HKEY_CLASSES_ROOTexefileDefaultIcon را برابر با مقدارHKEY_CLASSES_ROOTjpegfileDefaultIcon قرار می دهیم. نحوه انجام و جزئیات این روش را به عهده خودتان میگذارم.
نکته: تنها تفاوت آشکار فایل ها در عکس های بندانگشتی یا Thumbnail ها خواهد بود. چون فایل تصویری ما در اصل یک فایل اجرایی است در نتیجه ویندوز نمی تواند تصویر بندانگشتی از آن تهیه کند. مانند مثال زیر.
منبع قسمت ASSOC، این مقاله از Mi4night.